Advances in technology have resulted in smaller and more powerful computing devices. For example, there currently exist a variety of portable personal computing devices, including wireless computing devices, such as portable wireless telephones, personal digital assistants (PDAs), tablet computers, and paging devices that are small, lightweight, and easily carried by users. Many such computing devices include other devices that are incorporated therein. For example, a wireless telephone can also include a digital still camera, a digital video camera, a digital recorder, and an audio file player. Also, such computing devices can process executable instructions, including software applications, such as a web browser application that can be used to access the Internet and multimedia applications that utilize a still or video camera and provide multimedia playback functionality.
Electronic devices, such as mobile phones, may include multiple processors. For example, a mobile phone may include a central processing unit (CPU) (sometimes referred to as an application processor) and a digital signal processor (DSP). Each processor may be better suited than the other processor(s) to perform certain computation tasks. For example, the CPU, which may act as the primary processor and may execute the mobile phone operating system, may be more efficient in executing “control code,” such as web browser and user interface code. On the other hand, the DSP may be more efficient than the CPU when executing signal processing and other math-intensive functions.
in some multi-processor devices, one of the processors may act as a “primary” processor and the remaining processors may act as “secondary” processors. The primary processor may set guidelines regarding what the secondary processors can and cannot do. In addition, the primary processor may force the secondary processors to rely on the primary processor for certain configuration information, instead of computing such configuration information at the secondary processors. The primary processor may restrict the secondary processors from calculating such configuration information for security purposes (e.g., to avoid a situation in which multiple secondary processors attempt to define the same configuration information, which may result in loss of data integrity, deadlock, etc.).